/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package riogol2;

/**
 *
 * @author treiman
 */
public class Worker extends Thread {
    
    private Board nykyinen;
    private Board seuraava;
    
    private int workerLukumaara;
    
    private int id;
    
    public Worker(int id, int lukumaara, Board nykyinen, Board seuraava) {
        this.id = id;
        this.nykyinen = nykyinen;
        this.seuraava = seuraava;
        workerLukumaara = lukumaara;
    }
    
    @Override
    public void run() {
        // rivi, josta worker aloittaa
        int rivi = id;
        
        while(rivi < nykyinen.getRivimaara()) {
            
            // käydään rivi läpi
            for(int j = 0; j < nykyinen.getSarakemaara(); j++) {
                if(nykyinen.jatkaakoElossa(rivi, j)) {
                    seuraava.herata(rivi, j);
                }
                else {
                    //System.out.println("Tapetaan");
                    seuraava.tapa(rivi, j);
                }
            }
            
            // kasvatetaan tutkittavaa rivinumeroa
            rivi += workerLukumaara;
        }
        System.out.println("Säie nro. " + id + " on valmis!");
    }
}
